package com.project.service;

import com.project.bean.BuyCarBean;
import com.project.bean.ProductBean;

import java.util.List;

/**
 * 采购车业务接口
 */
public interface IBuyCarService {
    /**
     * 根据商品对象添加商品。操作类型（add/update）
     * 1、判断操作类型是否为add,如果为add，完成库存商品添加
     * 2、从session中取出登录用户对象。
     * 3、按用户id，库存商品id，查询采购车信息。
     * 如果采购车信息为null，则添加采购车记录。
     * 如果采购车信息不为null，则累加采购车商品数量
     * @param product 采购对象
     * @param buyNum 采购数量
     * @param userId 登录用户
     * @param operate 操作
     */
    void add(ProductBean product,Integer buyNum,Integer userId,String operate);

    /**
     * 通过采购车id删除采购车信息
     * @param buyCatId 采购车id
     */
    void del(Integer buyCatId);

    /**
     * 1、从session中取出登录用户。
      2、根据登录用户id，查询采购车信息，采购车信息中，需要包含采购商品的名称和品牌。
     * @param userId 用户Id
     * @return 采购车集合
     */
    List<BuyCarBean> findAll(Integer userId);

    /**
     * 修改采购价
     * @param buyCatId 采购车id
     * @param price 采购价
     */
    void updatePrice(Integer buyCatId,Integer price);

    /**
     * 修改采购数量
     * @param buyCatId 采购车id
     * @param num 采购数量
     */
    void updateNum(Integer buyCatId,Integer num);

}
